package io.renren.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.models.auth.In;
import lombok.Data;

import java.math.BigDecimal;
import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 *
 *
 * @author Mark
 * @email sunlightcs@gmail.com
 * @date 2020-11-10 16:11:11
 */
@Data
@TableName("sys_order_copy")
public class SysOrderEntity implements Serializable {

	@TableField(exist = false)
	private static final long serialVersionUID = 1L;

	/**
	 * 订单id
	 */
	@TableId
	private Integer orderId;

	/**
	 * 订单编号
	 */
	private String orderCode;

	/**
	 * 快递单号
	 */
	private  String logisticCode;
	/**
	 * 快递公司
	 */
	private String courier;
	/**
	 * 所属门店/商户id
	 */
	private Integer storeId;
	/**
	 * 订单状态：1已取消，2待确认，3代付款，4已完成，5已支付，6已发货,7申请退款中，8申请退货中,9退货完成，10退款完成
	 */
	private Integer state;
	/**
	 * 创建订单时间
	 */
	private Date creationTime;
	/**
	 * 会员名称
	 */
	private String userName;
	/**
	 * 订单金额
	 */
	private BigDecimal money;

	/**
	 * 运费
	 */
	private  BigDecimal freight;

	/**
	 * 订单实付金额
	 */
	private BigDecimal actualMoney;
	/**
	 * 配送方式：1快递，2到店自取
	 */
	private Integer distribution;

	/**
	 * 订单备注
	 */
	private String message;
	/**
	 * 支付时间
	 */
	private Date payTime;
	/**
	 * 配送地址
	 */
	private String addresses;

	private String area;
	/**
	 * 门店名称
	 */
	private String storeName;
	/**
	 * 商户名称
	 */
	private String merchantName;
	/**
	 * 订单类型：1门店，2商户
	 */
	private Integer type;
	/**
	 * 是否为礼包：1是，2否
	 */
	private Integer pack;
	/**
	 * 用户id
	 */
	private Integer userId;
	/**
	 * 核销码 string
	 */
	private String codeId;
	/**
	 * 核销码门店id
	 */
	private Integer retailCodeId;
	/**
	 * 门店是否拒单 1:是；0:否
	 */
	private Integer retailRejectStatus;
	/**
	 * 订单的货量1:散单 2:批单
	 */
	private Integer batchOrderStatus;

	/**
	 * 关联用户对象
	 */
	@TableField(exist = false)
	private MemberEntity member;

	private String mobile;


	private Integer paymentType;
	/**
	 * 关联产品列表
	 */
	@TableField(exist = false)
	private List<SysProductSkuEntity> products;

	@TableField(exist = false)
	private SysReturnGoodsEntity returnGoods;

	@TableField(exist = false)
	private List<SysReturnGoodsOperationEntity> operation;


}
